/*
 * $Id: $
 */
package org.rcgwt.client.ui.grid.controller;

import org.rcgwt.client.ui.grid.internal.model.IElementModel;
import org.rcgwt.client.ui.grid.model.IGridWidget;

import com.google.gwt.user.client.Event;

/**
 * 
 * @author Olivier Oeuillot (latest modification by $Author: $)
 * @version $Revision: $ $Date: $
 */
public interface IElementModelEventController {
	boolean processOver(IGridModelController gridModelController,
			IGridWidget gridWidget, IElementModel elementModel, Event event);

	boolean processFocus(IGridModelController gridModelController,
			IGridWidget gridWidget, IElementModel elementModel, Event event);

	boolean processBlur(IGridModelController gridModelController,
			IGridWidget gridWidget, IElementModel elementModel, Event event);

	boolean processSelection(IGridModelController gridModelController,
			IGridWidget gridWidget, IElementModel elementModel, Event event);

	boolean processOut(IGridModelController gridModelController,
			IGridWidget gridWidget, IElementModel elementModel, Event event);

	boolean processKeyPress(IGridModelController gridModelController,
			IGridWidget gridWidget, IElementModel elementModel, Event event);
}
